/*
 * Copyright 2009 The Microlog project @sourceforge.net
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package net.sf.microlog.config;

/**
 * This class contains all the properties keys that are available for Microlog.
 * 
 * @author Johan Karlsson (johan.karlsson@jayway.se)
 * 
 * 
 */
public class PropertyKeys {
	
	/**
	 * The key for setting the (root) level.
	 */
	public static final String LOG_LEVEL_KEY = "microlog.level";
	
	/**
	 * The key for setting the (root) appender.
	 */
	public static final String APPENDER_KEY = "microlog.appender";
	
	/**
	 * The key for setting the (root) formatter.
	 */
	public static final String FORMATTER_KEY = "microlog.formatter";
	
	/**
	 * The key for setting the pattern for the <code>PatternFormatter</code>
	 */
	public static final String PATTERN_KEY = "microlog.formatter.PatternFormatter.pattern";

	/**
	 * The property to set to control the appender behavior, cyclic or stop when
	 * the buffer is full
	 */
	public static final String MEMORY_BUFFER_CYCLIC_BUFFER_KEY = "microlog.appender.MemoryBufferAppender.cyclicBuffer";
	
	/**
	 * The property to set to configure the maximum number of log entries
	 */
	public static final String MEMORY_BUFFER_MAX_ENTRIES_KEY = "microlog.appender.MemoryBufferAppender.maxLogEntries";
	
	
	/**
	 * The property to set for the filename to log to.
	 */
	public static final String FILENAME_KEY = "microlog.appender.FileAppender.filename";

	/**
	 * The property to set for the RecordStore name.
	 */
	public static final String RECORD_STORE_NAME_KEY = "microlog.appender.RecordStoreAppender.recordStoreName";

	/**
	 * The property to set for the maximum log entries.
	 */
	public static final String RECORD_STORE_MAX_ENTRIES_KEY = "microlog.appender.RecordStoreAppender.maxLogEntries";
	
	/**
	 * The key for setting the com port for the serial appender.
	 */
	public static final String COM_PORT_KEY = "net.sf.microlog.appender.SerialAppender.comPort";
	
	/**
	 * The key for setting the message receiver for the <code>SMSBufferAppender</code>
	 */
	public final static String MESSAGE_RECEIVER_KEY = "microlog.appender.SMSBufferAppender.messageReceiver";
	
	/**
	 * The key for setting the subject for the <code>MMSBufferAppender</code>.
	 */
	public final static String SUBJECT_KEY = "microlog.appender.MMSBufferAppender.subject";
	
	/**
	 * The key for setting the priority for the <code>MMSBufferAppender</code>
	 */
	public final static String PRIORITY_KEY = "microlog.appender.MMSBufferAppender.priority";
	
	/**
	 * The key for setting the encoding for the <code>MMSBufferAppender</code>
	 */
	public final static String ENCODING_KEY = "microlog.appender.MMSBufferAppender.encoding";
	
	/**
	 * The key for setting the mime type for the <code>MMSBufferAppender</code>
	 */
	public final static String MIME_TYPE_KEY = "microlog.appender.MMSBufferAppender.mimeType";
	
	/**
	 * The key for setting the content id for the <code>MMSBufferAppender</code>
	 */
	public final static String CONTENT_ID_KEY = "microlog.appender.MMSBufferAppender.contentId";
	
	/**
	 * The key for setting the content location for the <code>MMSBufferAppender</code>
	 */
	public final static String CONTENT_LOCATION_KEY = "microlog.appender.MMSBufferAppender.contentLocation";
	
	/**
	 * The key for setting the server name for the <code>SocketAppender</code>
	 */
	public static final String SERVER_NAME_KEY = "microlog.appender.SocketAppender.serverName";
	
	/**
	 * The key for setting the port for the <code>SocketAppender</code>
	 */
	public static final String PORT_NO_KEY = "microlog.appender.SocketAppender.port";
	
	/**
	 * The key for setting the root logger.
	 */
	public static final String ROOT_LOGGER_KEY = "microlog.rootLogger";
	
	public static final String LOGGER_PREFIX_KEY = "microlog.logger";

	public static final String FORMATTER_PROPERTY = "formatter";
}
